home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 February: Tool Chest / Apple Developer CD Series Tool Chest February 1996 (Apple Computer)(1996).iso / Tool Chest / Interfaces & Libraries / Interfaces / AIncludes / GestaltEqu.a < prev    next >
Encoding:
Text File  |  1993-11-30  |  13.3 KB  |  306 lines  |  [TEXT/MPS ]

  1. ;    File:        GestaltEqu.a
  2. ;
  3. ;    Copyright:    © 1983-1993 by Apple Computer, Inc.
  4. ;                All rights reserved.
  5. ;
  6. ;    Version:    System 7.1• for ETO #13
  7. ;    Created:    Tuesday, March 30, 1993 18:00
  8. ;    Modified:    Tue, Nov 30, 1993 01:15:40
  9. ;
  10. ;___________________________________________________________________________
  11.  
  12.     IF &TYPE('__INCLUDINGGESTALTEQU__') = 'UNDEFINED' THEN
  13. __INCLUDINGGESTALTEQU__    SET    1
  14.  
  15. **************************
  16. * Gestalt error codes
  17. **************************
  18. gestaltUnknownErr            EQU     -5550             ; gestalt doesn't know the answer
  19. gestaltUndefSelectorErr        EQU       -5551             ; undefined code was passed to Gestalt
  20. gestaltDupSelectorErr        EQU     -5552             ; tried to add an entry that already existed
  21. gestaltLocationErr            EQU        -5553             ; gestalt function ptr wasn't in sysheap
  22.  
  23. **************************
  24. * Environment Selectors
  25. **************************
  26. gestaltVersion                EQU     'vers'            ; gestalt version
  27.  
  28. gestaltAddressingModeAttr    EQU        'addr'            ; addressing mode attributes
  29. gestalt32BitAddressing        EQU        0                 ; using 32-bit addressing mode
  30. gestalt32BitSysZone            EQU       1                 ; 32-bit compatible system zone
  31. gestalt32BitCapable            EQU       2                 ; machine is 32-bit mode capable
  32.  
  33. gestaltAliasMgrAttr            EQU       'alis'            ; Alias Mgr Attributes
  34. gestaltAliasMgrPresent        EQU        0                 ; True if the Alias Mgr is present
  35. gestaltAliasMgrSupportsRemoteAppletalk    EQU    1        ; True if the Alias Mgr knows about Remote Appletalk
  36. gestaltAppleTalkVersion        EQU        'atlk'            ; AppleTalk version
  37.  
  38. gestaltAUXVersion            EQU     'a/ux'            ; a/ux version, if present
  39.  
  40.  IF &TYPE('gestaltComponentMgr') = 'UNDEFINED' THEN
  41. gestaltComponentMgr         EQU        'cpnt'            ; Component Mgr version
  42.  ENDIF
  43.  
  44. gestaltTSMgrVersion            EQU        'tsmv'            ; Text Services Mgr version, if present
  45.  
  46. gestaltConnMgrAttr            EQU        'conn'            ; connection mgr attributes
  47. gestaltConnMgrPresent        EQU        0
  48. gestaltConnMgrCMSearchFix    EQU        1                ; do we have fix to CMAddSearch?
  49. gestaltConnMgrErrorString    EQU        2
  50. gestaltConnMgrMultiAsyncIO    EQU        3
  51.  
  52. gestaltCRMAttr                EQU        'crm '            ; comm resource mgr attributes
  53. gestaltCRMPresent            EQU        0
  54. gestaltCRMPersistentFix        EQU        1                ; fix for persistent connections present
  55. gestaltCRMToolRsrcCalls        EQU        2
  56.  
  57. gestaltCTBVersion            EQU        'ctbv'            ; CommToolbox version if present
  58.  
  59. gestaltDBAccessMgrAttr        EQU        'dbac'            ; Database Access Mgr attributes
  60. gestaltDBAccessMgrPresent    EQU        0                 ; True if the Database Access Mgr present
  61.  
  62. gestaltDITLExtAttr            EQU        'ditl'            ; AppenDITL, etc. calls from CTB
  63. gestaltDITLExtPresent        EQU        0                 ; True if calls are present
  64.  
  65. gestaltEasyAccessAttr        EQU     'easy'            ; Easy Access attributes
  66. gestaltEasyAccessOff        EQU        0                 ; if Easy Access present, but off (no icon)
  67. gestaltEasyAccessOn            EQU        1                 ; if Easy Access "On"
  68. gestaltEasyAccessSticky        EQU        2                 ; if Easy Access "Sticky"
  69. gestaltEasyAccessLocked        EQU        3                 ; if Easy Access "Locked"
  70.  
  71. gestaltEditionMgrAttr        EQU     'edtn'            ; Edition Mgr attributes
  72. gestaltEditionMgrPresent    EQU        0                 ; True if Edition Mgr present
  73.  
  74. gestaltAppleEventsAttr        EQU        'evnt'            ; Apple Events attributes
  75. gestaltAppleEventsPresent    EQU        0                 ; True if Apple Events present
  76.  
  77. gestaltFindFolderAttr        EQU      'fold'            ; FindFolder attributes
  78. gestaltFindFolderPresent    EQU        0                 ; True if FindFolder present
  79.  
  80. gestaltFontMgrAttr            EQU        'font'            ; Font Mgr attributes
  81. gestaltOutlineFonts            EQU       0                 ; True if OutLine Fonts are supported
  82.  
  83. gestaltStandardFileAttr        EQU        'stdf'            ; Standard File attributes
  84. gestaltStandardFile58        EQU       0                 ; True if selectors 5-8 (StandardPutFile-CustomGetFile) are supported
  85.  
  86. gestaltFPUType                EQU     'fpu '            ; FPU type
  87. gestaltNoFPU                 EQU     0                 ; no FPU
  88. gestalt68881                  EQU     1                 ; 68881 FPU
  89. gestalt68882                  EQU     2                 ; 68882 FPU
  90. gestalt68040FPU                EQU     3                 ; 68040 built-in FPU
  91.  
  92. gestaltFSAttr                EQU        'fs  '            ; file system attributes
  93. gestaltFullExtFSDispatching    EQU        0                ; has really cool new HFSDispatch dispatcher
  94. gestaltHasFSSpecCalls        EQU        1                ; has FSSpec calls
  95. gestaltHasFileSystemManager EQU        2                ; has a file system manager
  96.  
  97. gestaltFXfrMgrAttr            EQU        'fxfr'            ; file transfer manager attributes
  98. gestaltFXfrMgrPresent        EQU        0
  99. gestaltFXfrMgrMultiFile        EQU        1                ; supports FTSend and FTReceive
  100. gestaltFXfrMgrErrorString    EQU        2
  101.  
  102. gestaltHardwareAttr            EQU       'hdwr'            ; hardware attributes
  103. gestaltHasVIA1                EQU     0                 ; VIA1 exists
  104. gestaltHasVIA2                EQU     1                 ; VIA2 exists
  105. gestaltHasASC                EQU     3                 ; Apple Sound chip exists
  106. gestaltHasSCC                EQU     4                 ; SCC exists
  107. gestaltHasSCSI                EQU     7                 ; SCSI exists
  108. gestaltHasSoftPowerOff        EQU        19                ; Capable of software power off
  109. gestaltHasSCSI961            EQU        21                ; 53C96 SCSI controller on internal bus    <50>
  110. gestaltHasSCSI962            EQU        22                ; 53C96 SCSI controller on external bus    <50>
  111. gestaltHasUniversalROM        EQU        24                ; Do we gots a Universal ROM?            <49>
  112.  
  113. gestaltHelpMgrAttr            EQU        'help'            ; Help Mgr Attributes
  114. gestaltHelpMgrPresent        EQU     0                 ; true if help mgr is present
  115. gestaltHelpMgrExtensions    EQU     1                 ; true if help mgr extensions are installed
  116.  
  117. gestaltKeyboardType            EQU       'kbd '            ; keyboard type
  118. gestaltMacKbd                EQU     1
  119. gestaltMacAndPad            EQU     2
  120. gestaltMacPlusKbd            EQU     3
  121. gestaltExtADBKbd            EQU     4
  122. gestaltStdADBKbd            EQU     5
  123. gestaltPrtblADBKbd            EQU        6
  124. gestaltPrtblISOKbd            EQU        7
  125. gestaltStdISOADBKbd            EQU       8
  126. gestaltExtISOADBKbd            EQU       9
  127. gestaltADBKbdII                EQU        10
  128. gestaltADBISOKbdII            EQU        11
  129. gestaltPwrBookADBKbd        EQU        12                ; <49>
  130. gestaltPwrBookISOADBKbd        EQU        13                ; <49>
  131.  
  132. gestaltLowMemorySize        EQU      'lmem'            ; size of low-memory area
  133.  
  134. gestaltLogicalRAMSize        EQU     'lram'            ; logical RAM size
  135.  
  136. gestaltMiscAttr                EQU     'misc'            ; miscellaneous information
  137. gestaltScrollingThrottle    EQU        0                 ; true if scrolling throttle on
  138. gestaltSquareMenuBar        EQU        2                ; true if menu bar is square
  139.  
  140. gestaltMMUType                EQU     'mmu '            ; MMU type
  141. gestaltNoMMU                EQU     0                 ; no MMU
  142. gestaltAMU                    EQU     1                 ; address management unit
  143. gestalt68851                EQU     2                 ; 68851 PMMU
  144. gestalt68030MMU                EQU     3                 ; 68030 built-in MMU
  145. gestalt68040MMU                EQU     4                 ; 68040 built-in MMU
  146.  
  147. gestaltNotificationMgrAttr    EQU        'nmgr'           ; notification manager attributes
  148. gestaltNotificationPresent    EQU        0                ; notification manager exists
  149.  
  150. gestaltSerialAttr            EQU        'ser '            ; serial attributes                            <26>
  151. gestaltHasGPIaToDCDa        EQU        0                ; GPIa connected to DCDa                    <26>
  152. gestaltHasGPIaToRTxCa        EQU        1                ; GPIa connected to RTxCa clock input        <26>
  153. gestaltHasGPIbToDCDb        EQU        2                ; GPIb connected to DCDb                    <26>
  154.  
  155. gestaltNuBusConnectors        EQU        'sltc'            ; bitmap of slots with NuBus connectors        <26>
  156.  
  157. gestaltOSAttr                EQU     'os  '            ; O/S attributes
  158. gestaltSysZoneGrowable        EQU        0                 ; system heap is growable
  159. gestaltLaunchCanReturn        EQU        1                 ; can return from launch
  160. gestaltLaunchFullFileSpec    EQU     2                 ; can launch from full file spec
  161. gestaltLaunchControl        EQU      3                 ; launch control support available
  162. gestaltTempMemSupport        EQU     4                 ; temp memory support
  163. gestaltRealTempMemory        EQU     5                 ; temp memory handles are real
  164. gestaltTempMemTracked        EQU     6                 ; temporary memory handles are tracked
  165. gestaltIPCSupport            EQU     7                 ; IPC support is present
  166. gestaltSysDebuggerSupport    EQU     8                 ; system debugger support is present
  167.  
  168. gestaltOSTable                EQU        'ostt'            ; OS trap table base
  169. gestaltToolboxTable            EQU        'tbtt'            ; Toolbox trap table base
  170. gestaltExtToolboxTable        EQU        'xttt'            ; Extended Toolbox trap table base
  171.  
  172. gestaltLogicalPageSize        EQU        'pgsz'            ; logical page size
  173.  
  174. gestaltPowerMgrAttr            EQU       'powr'            ; power manager attributes
  175. gestaltPMgrExists            EQU     0
  176. gestaltPMgrCPUIdle            EQU        1
  177. gestaltPMgrSCC                EQU     2
  178. gestaltPMgrSound            EQU     3
  179.  
  180. gestaltPPCToolboxAttr        EQU     'ppc '            ; PPC toolbox attributes
  181. ;
  182. ; PPC will return the combination of following bit fields.
  183. ; e.g. gestaltPPCSupportsRealTime +gestaltPPCSupportsIncomming + gestaltPPCSupportsOutGoing
  184. ;indicates PPC is cuurently is only supports real time delivery
  185. ;and both icoming and outgoing network sessions are allowed.
  186. ;By default local real time delivery is supported as long as PPCInit has been called.
  187. ;
  188. gestaltPPCToolboxPresent            EQU        $0000   ; PPC Toolbox is present  Requires PPCInit to be called
  189. gestaltPPCSupportsRealTime            EQU        $1000   ; PPC Supports real-time deliveryy
  190. gestaltPPCSupportsStoreAndForward    EQU        $2000   ; PPC Store and Forward  delivery
  191. gestaltPPCSupportsDontCare            EQU        $4000   ; PPC Supports  Specification of Don't care
  192. gestaltPPCSupportsIncomming            EQU        $0001   ; PPC will deny incomming network requests
  193. gestaltPPCSupportsOutGoing            EQU        $0002   ; PPC will deny outgoing network requests
  194.  
  195. gestaltProcessorType        EQU      'proc'            ; processor type
  196. gestalt68000                EQU     1
  197. gestalt68010                EQU     2
  198. gestalt68020                EQU     3
  199. gestalt68030                EQU     4
  200. gestalt68040                EQU     5
  201.  
  202. gestaltParityAttr            EQU     'prty'            ; parity attributes
  203. gestaltHasParityCapability    EQU        0                ; has ability to check parity
  204. gestaltParityEnabled        EQU      1                 ; parity checking enabled
  205.  
  206. gestaltQuickdrawVersion        EQU        'qd  '            ; quickdraw version
  207. gestaltOriginalQD            EQU     $000              ; original 1-bit QD                 <3.2>
  208. gestalt8BitQD                EQU     $100              ; 8-bit color QD                    <3.2>
  209. gestalt32BitQD                EQU     $200              ; 32-bit color QD                    <3.2>
  210. gestalt32BitQD11            EQU     $210              ; 32-bit color QDv1.1                <31>
  211. gestalt32BitQD12            EQU     $220              ; 32-bit color QDv1.2                <31>
  212. gestalt32BitQD13            EQU     $230              ; 32-bit color QDv1.3                <31>
  213.  
  214. gestaltQuickdrawFeatures    EQU        'qdrw'            ; quickdraw features                    <37>
  215. gestaltHasColor                EQU        0                ; color quickdraw present                <37>
  216. gestaltHasDeepGWorlds        EQU        1                ; GWorlds can be deeper than 1-bit        <37>
  217. gestaltHasDirectPixMaps        EQU        2                ; PixMaps can be direct (16 or 32 bit)    <37>
  218. gestaltHasGrayishTextOr        EQU        3                ; supports text mode grayishTextOr        <37>
  219.  
  220. gestaltPhysicalRAMSize        EQU        'ram '            ; physical RAM size
  221.  
  222. gestaltPopupAttr            EQU        'pop!'            ; popup cdef attributes
  223. gestaltPopupPresent            EQU        0
  224.  
  225. gestaltResourceMgrAttr        EQU        'rsrc'            ; Resource Mgr attributes
  226. gestaltPartialRsrcs            EQU       0                 ; True if partial resources exist
  227.  
  228. gestaltScriptMgrVersion        EQU        'scri'            ; Script Manager version number     <08/05/89 pke>
  229. gestaltScriptCount            EQU        'scr#'            ; number of active script systems    <08/05/89 pke>
  230.  
  231. gestaltSoundAttr            EQU        'snd '            ; sound attributes
  232. gestaltStereoCapability        EQU        0                 ; sound hardware has stereo capability
  233. gestaltStereoMixing            EQU       1                 ; stereo mixing on external speaker
  234. gestaltSoundIOMgrPresent    EQU        3                ; The Sound I/O Manager is present
  235. gestaltBuiltInSoundInput    EQU        4                ; built-in Sound Input hardware is present
  236. gestaltHasSoundInputDevice     EQU        5                ; Sound Input device available
  237. gestaltPlayAndRecord        EQU        6                ; built-in hardware can play and record simultaneously
  238.                                                     ; the following bits are not defined prior to Sound Mgr 3.0
  239. gestaltPlayFromDisk            EQU        7                ; play from disk available, set by Sound Mgr 3.0 and later
  240. gestaltMultiChannels        EQU        8                ; multiple channel support, set by Sound Mgr 3.0 and later
  241.  
  242. gestaltStdNBPAttr            EQU        'nlup'            ; standard nbp attributes
  243. gestaltStdNBPPresent        EQU        0
  244.  
  245. gestaltTextEditVersion        EQU        'te  '            ; TextEdit version number
  246. gestaltTE1                    EQU     1                 ; TextEdit in MacIIci ROM
  247. gestaltTE2                    EQU     2                 ; TextEdit with 6.0.4 Script Systems on MacIIci (Script bug fixes for MacIIci) <8Aug89smb>
  248. gestaltTE3                    EQU     3                 ; TextEdit with 6.0.4 Script Systems all but MacIIci
  249. gestaltTE4                    EQU     4                 ; TextEdit in Big Bang
  250. gestaltTE5                    EQU     5                 ; TextWidthHook available in TextEdit
  251.  
  252. gestaltTermMgrAttr            EQU        'term'            ; terminal mgr attributes
  253. gestaltTermMgrPresent        EQU        0
  254. gestaltTermMgrErrorString    EQU        2
  255.  
  256. gestaltTimeMgrVersion        EQU     'tmgr'            ; time manager attributes
  257. gestaltStandardTimeMgr        EQU        1                 ; standard time mgr is present
  258. gestaltRevisedTimeMgr        EQU     2                 ; revised time mgr is present
  259. gestaltExtendedTimeMgr        EQU        3                 ; extended time mgr is present
  260.  
  261. gestaltVMAttr                EQU     'vm  '            ; virtual memory attributes
  262. gestaltVMPresent            EQU     0                 ; virtual memory is present
  263.  
  264. gestaltDictionaryMgrAttr    EQU        'dict'            ; Dictionary Manager attributes
  265. gestaltDictionaryMgrPresent    EQU        0                ; Dictionary Manager attributes
  266.  
  267. gestaltIconUtilities        EQU        'icon'            ; Icon Utilities attributes
  268. gestaltIconUtilitiesPresent    EQU        0                ; true if icon utilities are present
  269.  
  270.  
  271. **************************
  272. * Info-only Selectors
  273. **************************
  274. gestaltMachineType            EQU        'mach'            ; machine type
  275. gestaltClassic                EQU     1
  276. gestaltMacXL                EQU     2
  277. gestaltMac512KE                EQU     3
  278. gestaltMacPlus                EQU     4
  279. gestaltMacSE                EQU     5
  280. gestaltMacII                EQU     6
  281. gestaltMacIIx                EQU     7
  282. gestaltMacIIcx                EQU     8
  283. gestaltMacSE30                EQU     9
  284. gestaltPortable                EQU     10
  285. gestaltMacIIci                EQU     11
  286. gestaltMacIIfx                EQU     13
  287. gestaltMacClassic            EQU        17                ; <29>
  288. gestaltMacIIsi                EQU        18                ; <29>
  289. gestaltMacLC                EQU        19                ; <29>
  290. gestaltQuadra900            EQU        20                ; <49>
  291. gestaltPowerBook170            EQU        21                ; <49>
  292. gestaltQuadra700            EQU        22                ; <49>
  293. gestaltClassicII            EQU        23                ; <49>
  294. gestaltPowerBook100            EQU        24                ; <49>
  295. gestaltPowerBook140            EQU        25                ; <49>
  296. gestaltQuadra950            EQU        26                ; <53>
  297. gestaltMacLCII                EQU        37                ; <52>
  298. gestaltPowerBook145            EQU        54                ; <55>
  299.  
  300. gestaltMachineIcon            EQU        'micn'            ; machine icon
  301.  
  302. gestaltROMSize                EQU     'rom '            ; ROM size
  303. gestaltROMVersion            EQU     'romv'            ; ROM version
  304. gestaltSystemVersion        EQU      'sysv'            ; system version
  305.  
  306.     ENDIF    ; ...already included